From c241a8981a9f5709e100363bd0e5d6fdb6d90bbc Mon Sep 17 00:00:00 2001 From: Ian Campbell Date: Fri, 11 Oct 2013 17:23:18 +0100 Subject: [PATCH] xen: arm: enable synchronous console while starting secondary CPUs Setting synchronous console ensures that any printk hits the buffer immediately and that any outstanding queued log messages are flushed. This ensures that such log messages are not being printed while the secondary CPU may be using early_printk during early bringup. Signed-of-by: Ian Campbell Acked-by: Julien Grall Cc: Keir Fraser --- xen/arch/arm/smpboot.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/xen/arch/arm/smpboot.c b/xen/arch/arm/smpboot.c index 7636ab819c..e862477154 100644 --- a/xen/arch/arm/smpboot.c +++ b/xen/arch/arm/smpboot.c @@ -28,6 +28,7 @@ #include #include #include +#include #include cpumask_t cpu_online_map; @@ -356,6 +357,8 @@ int __cpu_up(unsigned int cpu) if ( rc < 0 ) return rc; + console_start_sync(); /* Secondary may use early_printk */ + /* Tell the remote CPU which stack to boot on. */ init_data.stack = idle_vcpu[cpu]->arch.stack; @@ -368,6 +371,8 @@ int __cpu_up(unsigned int cpu) rc = arch_cpu_up(cpu); + console_end_sync(); + if ( rc < 0 ) { printk("Failed to bring up CPU%d\n", cpu); -- 2.30.2